"""
    昨天的导入模块存在一个问题:
        一个py文件中创建的多个函数在另外一个py文件中使用时需要分开导入
        这样比较麻烦是否有更好的导入方式.
        使用*可以偷懒一点但也会产生额外问题:如果一个py文件中的函数有些
        要使用有些不使用.在使用*号时会全部导入.这是一种浪费.
        
    封装:
        我们把具有共性的放到一起,使用关键字class在组装.这样就构成一个全新
        的数据类型.
        这个类型中存放的是我们对某一事物共性的描述.
        这些共性可以分为2类
            1.特征 用变量表示
            2.行为 用方法表示(写在class中的函数叫做方法)
        如果需要使用类型中所定义的特征的和行为.只需要通过类型的实例(对象)
        调用就可以了!
"""

class KDT(object):
    """
        KDT:关键字驱动测试: Keyword-driven Testing
        object是所有class的根类. 等同于KDT继承object
        针对网页我们能够做的操作相同的.
    """
    
    def __init__(self,url):
        """
            init方法用于实例化
            @param url:要测试的网站
        """
        self.url = url
        
   
    def open(self):
        print("打开{}网站".format(self.url))

    def input(self):
        print("向{}上的输入框中输入内容".format(self.url))

    def click(self):
        print("点击{}页面上的按钮".format(self.url))

    

urls = ["https://www.qq.com/?fromdefault","http://sohu.com/","https://www.baidu.com"]

for url in urls:
    # KDT() 类名() 调用类中的__init__来对类做实例化操作
    # 所得到的对象赋值给变量k .遥控器是k KDT()得到电视机
    k = KDT(url)
    # 通过对象.方法 来执行类中定义好的方法
    k.open()
    k.input()
    k.click()